﻿/*
 *  Source code courtesy of the desktopWeb.CodePlex.com community project. See MS-PL license on Codeplex.com. 
 *  This is beta code not intended for a production application.
 */

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections.ObjectModel;
using MyData.ExpressionBuilder.Model;
using System.Windows.Forms;
using System.Windows.Controls;

namespace MyData.ExpressionBuilder.Interfaces
{
  public interface IExpressionBuilder
  {
    IExpressionItemsProvider ItemsProvider { get; set; }
    IExpressionTypeConverter Converter { get; set; }
    ItemsControl ItemsControl { get; set; }

    List<ListItem> Results { get; }
    int ResultsCount { get; }

    void Run(IEnumerable<ListItem> metadata);

    Action<object> OnUpdated { get; set; }
  }
}

